<html>
<head>
<title>Numeric Pointer Module v1.1</title>
</head>
<body>

<H1><font color="blue">Numeric Pointer Module</font></H1>
<H4><P>
  Written by:  Rodrigo Caballero Augi (<a href="mailto://rca@geosci.uchicago.edu">rca@geosci.uchicago.edu</a>),<br>  

  Updated:  Christian Dieterich (<a href="mailto://cdieterich@geosci.uchicago.edu">cdieterich@geosci.uchicago.edu</a>),<br>
  Packaged:  Michael Steder (<a href="mailto://steder@gmail.com">steder@gmail.com</a>)<br>
 <a href="http://geosci.uchicago.edu">Department of Geophysical Sciences, University of Chicago</a><br>
  2004<br>
</H4>
<H2><font color="green">Introduction:</font></H2>
	
   <P>The Numeric Pointer module (NumPtr) is a SWIGable module that makes it possible to access
data stored in <a href="http://www.pfdubois.com/numpy/">Numeric arrays</a> as if they were normal C/C++ arrays( declared <i>type name[][];</i> ).

   <P>NumPtr was developed to make it possible to work with SWIG'ed C or Fortran climate codes from Python.

   <P>This package is also a good example of how to write C extensions for Python that manipulate arrays.

<H2><font color="green">Getting the Module</font></H2>
   <P>You can download the current version of the module here:
   <ul><b>
     <li><a href="numptr-1.1.tar.gz">NumPtr 1.1 (Tarball)</a></li>
     <li><a href="numptr-1.1.zip">NumPtr 1.1 (Zip)</a></li>
     <li><a href="numptr-1.1.exe">NumPtr 1.1 (Windows Installer)</a></li>
   </b></ul>

<H2><font color="green">Requirements</font></H2>
   <P><ul>
     <li>Python 2.2+ (with Distutils!)</li>
     <li>C Compiler</li>
     <li>SWIG 1.3+</li>
   </ul>
   <P>
     This package was most recently tested with Python 2.3.3, GCC 3.4.1, and SWIG 1.3.21.

<H2><font color="green">Compiling NumPtr</font></H2>

   <P>To compile NumPtr you simply have to invoke distutils build process:
   ( $ represents the command prompt )

   <ul><b>
   $ python setup.py build
   </b></ul>

<H2><font color="green">Installing NumPtr</font></H2>
   <P>To install NumPtr with administrative privileges you must invoke distutils with the "install" option:
   <ul><b>
   $ python setup.py install
   </b></ul>

   <P>To install NumPtr into a different directory then the standard or to install it into a home directory (for non-administrators), you can set the "--prefix" or "--install-base" options when calling setup.py.  For instance.
   <ul><b>
   $ python setup.py install --prefix=/home/user
   </b></ul>

   <P>Alternatively you can simply copy the files from build/lib.ARCH (where ARCH is your machines python version and operating system(kernel) version) to your chosen install location.  
   <ul><b>
   $ cp build/lib.linux-i686-2.3/* /home/user/python-libs/
   </b></ul>

<H2><font color="green">Using the Module</font></H2>
   <P>

<H2><font color="green">Getting Help</font></H2>
   <P>The Climate Systems Group @ U of C maintains a Wiki community site, if you have questions or comments about the Numeric Pointer module please ask there:
   <ul><b>
   <a href="http://geodoc.uchicago.edu/climatewiki">CSC Wiki</a>
   </b></ul>

</body>
<footer>
<hr>
&#169; Mike Steder: Climate Systems Center, 2004
</footer>
</html>

